package com.ruoyi.drug.domain;

import java.math.BigDecimal;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 订单
 对象 drugs_order
 *
 * @author ruoyi
 * @date 2022-11-14
 */
public class DrugsOrder extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 主键ID */
    private Long orderId;

    /** 单据ID（CG开头的19位数字） */
    @Excel(name = "单据ID", readConverterExp = "C=G开头的19位数字")
    private String orderDocumentId;

    /** 供应商（外键）参考drugs_support 供应商名字 */
    @Excel(name = "供应商", readConverterExp = "外=键")
    private Long orderSupId;

    /** 采购批发总额 */
    @Excel(name = "采购批发总额")
    private BigDecimal orderTotal;

    /** 申请人（外键）参考system_user 名字字段 */
    @Excel(name = "申请人", readConverterExp = "外=键")
    private String orderMan;

    /** 状态
     0申请状态
     1待审核
     2审核失败
     3审核成功
     4已入库
     5作废 */
    @Excel(name = "状态", readConverterExp = "外=键")
    private String detailStatus;

    /** 入库操作人 */
    @Excel(name = "入库操作人")
    private String detailOperator;

    /** 入库时间 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @Excel(name = "入库时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
    private Date detailDate;

    public void setOrderId(Long orderId)
    {
        this.orderId = orderId;
    }

    public Long getOrderId()
    {
        return orderId;
    }
    public void setOrderDocumentId(String orderDocumentId)
    {
        this.orderDocumentId = orderDocumentId;
    }

    public String getOrderDocumentId()
    {
        return orderDocumentId;
    }
    public void setOrderSupId(Long orderSupId)
    {
        this.orderSupId = orderSupId;
    }

    public Long getOrderSupId()
    {
        return orderSupId;
    }
    public void setOrderTotal(BigDecimal orderTotal)
    {
        this.orderTotal = orderTotal;
    }

    public BigDecimal getOrderTotal()
    {
        return orderTotal;
    }
    public void setOrderMan(String orderMan)
    {
        this.orderMan = orderMan;
    }

    public String getOrderMan()
    {
        return orderMan;
    }
    public void setDetailStatus(String detailStatus)
    {
        this.detailStatus = detailStatus;
    }

    public String getDetailStatus()
    {
        return detailStatus;
    }
    public void setDetailOperator(String detailOperator)
    {
        this.detailOperator = detailOperator;
    }

    public String getDetailOperator()
    {
        return detailOperator;
    }
    public void setDetailDate(Date detailDate)
    {
        this.detailDate = detailDate;
    }

    public Date getDetailDate()
    {
        return detailDate;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
                .append("orderId", getOrderId())
                .append("orderDocumentId", getOrderDocumentId())
                .append("orderSupId", getOrderSupId())
                .append("orderTotal", getOrderTotal())
                .append("orderMan", getOrderMan())
                .append("detailStatus", getDetailStatus())
                .append("detailOperator", getDetailOperator())
                .append("detailDate", getDetailDate())
                .append("createBy", getCreateBy())
                .append("createTime", getCreateTime())
                .append("updateBy", getUpdateBy())
                .append("updateTime", getUpdateTime())
                .append("remark", getRemark())
                .toString();
    }
}
